এসকিউএল ডেট (SQL Date)

Database Tutorials - এসকিউএল (SQL) - এসকিউএল ডাটাবেস (SQL Database) | NCTB BOOK

তারিখ নিয়ে কাজ করার সময় সবচেয়ে গুরত্বপূর্ণ কাজ হলো আপনি তারিখের যে ফরম্যাট নির্বাচন করেছেন তা যেন আপনার ডেটাবেজ কলামের date ফরম্যাটের সাথে মিলে। এটা নাহলে আপনি ডেটাবেজে সঠিক ভাবে date ইনপুট করতে পারবেন না।

আপনার date কলামে শুধুমাত্র তারিখ থাকলে কুয়েরি করতে অনেক সহজ হবে। কিন্তু যদি আপনার date কলামে তারিখের পাশাপাশি সময়ও থাকে তাহলে কুয়েরি করা একটু কঠিন হয়ে উঠে।

নিম্নে MySQL এবং SQL Server এর কিছু গুরুত্বপূর্ণ বিল্ট-ইন date ফাংশন এবং তাদের ব্যবহার বর্ণনা করা হলোঃ


MySQL Date ফাংশন

নিম্নের তালিকায় MySQL এর কয়েকটি গুরুত্বপূর্ণ বিল্ট-ইন ফাংশন দেওয়া হলঃ

ফাংশনবর্ণনা
NOW()বর্তমান date এবং time রিটার্ন করবে।
CURDATE()বর্তমান date রিটার্ন করবে।
CURTIME()বর্তমান time রিটার্ন করবে।
DATE()date অথবা date/time এক্সপ্রেশন থেকে শুধুমাত্র date অংশটি নিবে।
EXTRACT()date অথবা time যেকোন একটি অংশ রিটার্ন করবে।
DATE_ADD()date এ একটি নির্দিষ্ট সময় ব্যবধান যোগ করবে।
DATE_SUB()date থেকে একটি নির্দিষ্ট সময় ব্যবধান বিয়োগ করবে।
DATEDIFF()দুইটি date এর পার্থক্য রিটার্ন করবে।
DATE_FORMAT()date অথবা time কে দেখানোর জন্য বিভিন্ন ফরম্যাট নির্ধারন করবে।

SQL Server Date ফাংশন

নিম্নের লিস্টে SQL Server এর কয়েকটি গুরুত্বপূর্ণ বিল্ট-ইন ফাংশন দেওয়া হলঃ

ফাংশনবর্ণনা
GETDATE()বর্তমান date এবং time রিটার্ন করবে।
DATEPART()date অথবা time যেকোন একটি অংশ রিটার্ন করবে।
DATEADD()date থেকে একটি নির্দিষ্ট সময় ব্যবধান যোগ/বিয়োগ করবে।
DATEDIFF()দুইটি date এর পার্থক্য রিটার্ন করবে।
CONVERT()date অথবা time কে দেখানোর জন্য বিভিন্ন ফরম্যাট নির্ধারন করবে।

SQL Date টাইপ

MySQL ডেটাবেজে date অথবা date/time এর সিনট্যাক্সঃ

  • DATE - ফরম্যাটঃ YYYY-MM-DD
  • DATETIME - ফরম্যাটঃ YYYY-MM-DD HH:MI:SS
  • DATETIME - ফরম্যাটঃ YYYY-MM-DD HH:MI:SS
  • YEAR - ফরম্যাটঃ YYYY অথবা YY

SQL Server ডেটাবেজে date অথবা date/time এর সিনট্যাক্সঃ

  • DATE - ফরম্যাটঃ YYYY-MM-DD
  • DATETIME - ফরম্যাটঃ YYYY-MM-DD HH:MI:SS
  • SMALLDATETIME - ফরম্যাটঃ YYYY-MM-DD HH:MI:SS
  • DATETIME - ফরম্যাটঃ একটি ইউনিক নাম্বার

বিঃদ্রঃ ডাটবেজে নতুন টেবিল তৈরি করার সময় আপনি কলাম এর জন্য date এর টাইপ নির্ধারণ করে দিতে পারবেন!


SQL Date ফাংশন এর ব্যবহার

তারিখের সাথে অন্য কোন উপাদান জড়িত না থাকলে আপনি খুব সহজেই দুইটি তারিখের মধ্যে তুলনা করতে পারেন।

নিম্নলিখিত "Student_attendance" টেবিলটি দেখুনঃ

আইডি নংরোল নাম্বারউপস্থিতিভর্তির তারিখ
১০১৮৯০১-১১-২০১৫
১০২৯১০১-১১-২০১৫
১০৩৮০০১-১১-২০১৫
১০৪৭৫০২-১১-২০১৫
১০৫৭৭০২-১১-২০১৫

এখন আমরা "ভর্তির তারিখ(Admission_date)" কলাম থেকে "০১-১১-২০১৫" তারিখের রেকর্ড-সমূহ সিলেক্ট করবো।

উদাহরণ

SELECT * FROM Student_attendance
WHERE Admission_date='০১-১১-২০১৫';

 


 

ফলাফলঃ

আইডি নংরোল নাম্বারউপস্থিতিভর্তির তারিখ
১০১৮৯০১-১১-২০১৫
১০২৯১০১-১১-২০১৫
১০৩৮০০১-১১-২০১৫

এখন আমরা "Student_attendance" টেবিলের "ভর্তির তারিখ(Admission_date)" কলামে তারিখের সাথে সময়ও যুক্ত করবো।

ধরুন, এখন আমাদের "Student_attendance" টেবিলটি নিম্নের মত দেখাবেঃ

আইডি নংরোল নাম্বারউপস্থিতিভর্তির তারিখ
১০১৮৯০১-১১-২০১৫ ১১:৩০:২০
১০২৯১০১-১১-২০১৫ ১১:৩২:১০
১০৩৮০০১-১১-২০১৫ ১১:৪০:৪৫

এখন আমরা যদি উপরের মত একই SELECT স্টেটমেন্ট ব্যবহার করি তাহলে আমরা কোন ফলাফল পাবো না! কারন এই কুয়েরিটি শুধুমাত্র date কে সিলেক্ট করবে।

বিঃদ্রঃ আপনি যদি আপনার কুয়েরিকে সহজ রাখতে চান তাহলে date কলামে time কে ভিন্ন কলামে যোগ করুন।

Content added By
Promotion